package xyz.pro5books.service;

import xyz.pro5books.pojo.Book;
import xyz.pro5books.pojo.BookCat;
import xyz.pro5books.pojo.PaymentInfo;
import xyz.pro5books.vo.PageResult;
import xyz.pro5books.vo.PageResult2;
import xyz.pro5books.vo.UserCollBook;

import java.util.List;

public interface BookService {
    PageResult2 searchall(PageResult2 pageResult2);

    List<BookCat> getmenulist();

    void addDownloadNum(Integer bookId, Integer downNum);

    Book getBookById(Integer id);

    void addCollections(Integer userId, Integer bookId);

    Integer getUserCollNum(Integer userId);

    void concelCollect(Integer userId, Integer bookId);

    Integer getBookCollectState(Integer userId, Integer bookId);

    void doReport(Integer userId, Integer bookId, Integer reason);

    void concelReport(Integer userId, Integer bookId);

    Integer getBookReportState(Integer userId, Integer bookId);

    List<String> getBookPic(Integer bookId);

    PageResult getBookList(PageResult pageResult);

    void updateBookStatus(Book book);

    void deleteBook(Integer id);

    Book getBook(Integer id);

    void updateBook(Book book);

    List selBookCount();

    void addBookForm(Book book);

    List<UserCollBook> getCollList(Integer userId);

    PaymentInfo getPaymentInfo(String token);
}
